package 系统复习.面试题.哈希;

import java.util.HashMap;
import java.util.Map;

/**
 * 给你一个整数数组 A，请找出并返回在该数组中仅出现一次的最大整数。
 * 如果不存在这个只出现一次的整数，则返回 -1。
 */
public class L1133 {

    public int largestUniqueNumber(int[] nums) {

        Map<Integer, Integer> map = new HashMap<>();
        for (int num : nums) {
            map.put(num, map.getOrDefault(num, 0) + 1);
        }
        int max = -1;
        for (Integer num : map.keySet()) {
            if (map.get(num) == 1) {
                max = Math.max(max, num);
            }
        }
        return max;
    }

    public static void main(String[] args) {
        L1133 l1133 = new L1133();
        System.out.println(l1133.largestUniqueNumber(new int[]{5,7,3,9,4,9,8,3,1}));
    }
}
